var curry = function(fn) {
    var args = [].slice.call(arguments, 1) // add 该有的数拿到
    return function() {
        // newArgs 一定代表的是 add 该有的完成的函数
        var newArgs = args.concat([].slice.call(arguments)) // [...arguments]
    //    return fn.apply(this, newArgs)
       return fn(...newArgs)
    }
}
function add(a, b) {
    return a + b
}

var addCurry = curry(add)
addCurry(1, 2)
console.log( addCurry(1, 2));

// var addCurry = curry(add, 1)
// addCurry(2)

// var addCurry = curry(add, 1, 2)
// addCurry()